package name.marz.to.go.ahg.sonybank.executer;


import name.marz.to.go.ahg.core.checker.DocumentChecker;
import name.marz.to.go.ahg.core.exception.CannotLoginException;
import name.marz.to.go.ahg.core.exception.DoubleLoginException;
import name.marz.to.go.ahg.core.exception.UnknownClientException;

import org.jsoup.nodes.Document;
import org.jsoup.nodes.Element;


public class SonyBankLoginChecker implements DocumentChecker {
	@Override
	public void check(Document doc) throws CannotLoginException, DoubleLoginException, UnknownClientException {
		Element title = doc.getElementsByTag("title").first();
		// 二重ログインチェック
		String str = "二重ログインです";
		if ( title.text().contains(str) ) throw new DoubleLoginException(str);
		
		// ログインエラーチェック
		str = "ログインできませんでした";
		if ( title.text().contains(str) ) {
			CannotLoginException cle = new CannotLoginException(str);
			cle.setDocument(doc);
			throw cle;
		}
		
		// 端末未登録チェック
		str = "ご利用パソコンの登録";
		if ( title.text().contains(str) ) {
			UnknownClientException uce = new UnknownClientException();
			uce.setDocument(doc);
			throw uce;
		}
		
		return;
	}
}
